#    Copyright (C) 2019 Mason Hock <mason@masonhock.com>
#
#    This program is free software; you can redistribute it and/or modify
#    it under the terms of the GNU General Public License as published by
#    the Free Software Foundation; either version 3 of the License, or
#    (at your option) any later version.
#
#    This program is distributed in the hope that it will be useful,
#    but WITHOUT ANY WARRANTY; without even the implied warranty of
#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#    GNU General Public License for more details.
#
#    You should have received a copy of the GNU General Public License
#    along with this program; if not, write to the Free Software
#    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
#


def seconds_to_timestamp(durations):
    show_hours = False
    for duration in durations:
        if duration // 3600 > 0:
            show_hours = True
            break

    def pad(n):
        if len(str(n)) == 1:
            return "0" + str(n)
        else:
            return str(n)

    for i, duration in enumerate(durations):
        duration = int(duration)
        if show_hours:
            durations[i] = ":".join(
                [str(duration // 3600), pad(duration // 60), pad(duration % 60)]
            )
        else:
            durations[i] = ":".join([str(duration // 60), pad(duration % 60)])

    return durations
